/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.Modelo;

import br.DAO.PedidoDAO;
import java.sql.Timestamp;
import java.util.ArrayList;
    
/**
 *
 * @author Administrador
 */
public class Pedido {
    private int codigo_pedido;
    private Timestamp data_pedido;
    private ArrayList<Produto> produto_pedido;
    private Cliente cliente_pedido;
    private int numero_pedido;
    private double valor_pedido;

    public double getValor_pedido() {
        return valor_pedido;
    }

    public void setValor_pedido(double valor_pedido) {
        this.valor_pedido = valor_pedido;
    }

    public int getNumero_pedido() {
        return numero_pedido;
    }

    public void setNumero_pedido(int numero_pedido) {
        this.numero_pedido = numero_pedido;
    }

    public Cliente getCliente_pedido() {
        return cliente_pedido;
    }

    public void setCliente_pedido(Cliente cliente_pedido) {
        this.cliente_pedido = cliente_pedido;
    }

    public int getCodigo_pedido() {
        return codigo_pedido;
    }

    public void setCodigo_pedido(int codigo_pedido) {
        this.codigo_pedido = codigo_pedido;
    }

    public Timestamp getData_pedido() {
        return data_pedido;
    }

    public void setData_pedido(Timestamp data_pedido) {
        this.data_pedido = data_pedido;
    }

    public ArrayList<Produto> getProduto_pedido() {
        return produto_pedido;
    }

    public void setProduto_pedido(ArrayList<Produto> produto_pedido) {
        this.produto_pedido = produto_pedido;
    }
    
    public void setProximoCodigoInsercao(){
        int ProximoCodigo = PedidoDAO.PegaCodigoPelaNavegacao(3, 0);
        this.codigo_pedido = ProximoCodigo + 1;
    }
    
    public void Salvar()
    {
        PedidoDAO.Salvar(this);
    }
    
    public void Atualizar()
    {
        PedidoDAO.Atualizar(this);
    }
    
    public void Excluir(){
        PedidoDAO.Excluir(this.getNumero_pedido());
    }
    
    public ArrayList<String> RecuperarProdutos(){
        ArrayList<String> produtos = new ArrayList<String>();
        produtos = PedidoDAO.RecuperarProdutos(this.numero_pedido);
        return produtos;
    }
    
    public int RecuperaCodigoCliente(){
        return PedidoDAO.RecuperaCodigoCliente(this.numero_pedido);
    }
    
    public ArrayList<Pedido> RecuperaPedidos(){
        return PedidoDAO.RecuperaPedidos(); 
    }
}
